WiFiUDP Udp; // 声明UDP对象

IPAddress remote_IP(192, 168, 0, 88); // 自定义远程监听 IP 地址
// IPAddress remote_IP(192, 168, 0, 17); // 配置远端 IP 地址

unsigned int remoteUdpPort = 6060; // 自定义远程监听端口

// 定义缓冲区
char buff[255]; // 存储Udp客户端发过来的数据

unsigned long UdpTick = 0; // 心跳
void qidongUDP()
{
        if (WiFi.status() == WL_CONNECTED && millis() - UdpTick >= 1000)
        {

                Udp.beginPacket(remote_IP, remoteUdpPort); // 配置远端ip地址和端口
                // // 获取上位机传递过来的数据长度
                // int data_len = Udp.parsePacket();
                // // 如果长度非0，表示数据存在且有效
                // if (data_len)
                // {
                //     // 读取长度为255字节的数据并将他们保存到缓冲区buff里面
                //     int len = Udp.read(buff, 255);
                //     // 由于长度不可能总是255，对于多出来的乱码部分采用截断处理
                //     if (len > 0)
                //     {
                //         buff[len] = 0;
                //         // 把获取的数据发送回去
                //         Udp.println(buff);
                //         Udp.endPacket(); // 发送数据
                //     }
                // }

                Udp.print("电池电压:");
                Udp.println(ble_U);
                Udp.print("电池电流:");
                Udp.println(ble_I);
                Udp.print("电池温度:");
                Udp.println(ble_T1);
                Udp.print("电池电量:");
                Udp.println(ble_dl);
                Udp.print("充电电压:");
                Udp.println(xdc_U / 1000);
                Udp.print("充电电流:");
                Udp.println(xdc_I / 1000);
                Udp.print("光伏电压:");
                Udp.println(tyn_U / 1000);
                Udp.print("光伏电流:");
                Udp.println(tyn_I / 1000);
                Udp.print("光伏功率:");
                Udp.println(tyn_P);
                Udp.print("累计功率:");
                Udp.println(kWh);
                Udp.print("控制器温度:");
                Udp.println(MOS_T);
                Udp.print("目标IP地址:");
                Udp.println(remote_IP);
                Udp.endPacket(); // 发送数据
                UdpTick = millis();
        }
}
